export type Order = {
  Address: string;
  adult_count: number;
  checkInDate: string;
  checkOutDate: string;
  child_count: number;
  countdown: number;
  createTime: string;
  days: number;
  expiration_time: number;
  id: number;
  orderSn: string;
  orderStatus: string;
  order_amount: number;
  propertyName: string;
  refundStatus: string;
  roomNum: number;
  thirePayAmount: number;
};

export type OrderDetails = {
  OrderDate: {
    days: number;
    endDate: string;
    startDate: string;
  };
  PayInfo: {
    Balance: {
      amount: number;
      payOrderSn: string;
      payStatus: string;
      refundAmount: number;
      refundStatus: string;
    };
    Coupon: {
      amount: number;
      payOrderSn: string;
      payStatus: string;
      refundAmount: number;
      refundStatus: string;
    };
    ThirdPay: {
      amount: number;
      payOrderSn: string;
      payStatus: string;
      refundAmount: number;
      refundStatus: string;
    };
    allAmount: number;
    orderStatus: string;
    payModel: number;
    refundStatus: string;
  };
  Property: {
    address: string;
    cover: string;
    name: string;
    requiredBook: string;
  };
  RatePlans: OrderDetailsRoom[];
  User: {
    fullName: string;
    mail: string;
    phone: string;
    phoneArea: string;
  };
  checkinStatus: string;
  countdown: number;
  createOrderTime: string;
  id: number;
  memberId: number;
  orderSn: string;
  payAmount: number;
  refundDetail: {
    cancelFee: number;
    refundFee: number;
    cancelRate: any[];
  };
};

export type OrderDetailsRoom = {
  adult: number;
  booking_fee: number;
  charges: {
    amount: number;
    date: string;
    description: string;
    fee_type: string;
    id: number;
    uid: string;
  }[];
  child: number;
  cover: string;
  infant: number;
  name: string;
  remark: string;
  roomNoId: string;
  roomNum: number;
  room_id: string;
};

export type OrderRefundDetails = {
  preCancelOrderSn: string;
  cancelFee: number;
  outOrderSn: string;
  orderSn: string;
  orderCreateAt: string;
  bookerFee: number;
  refundFee: number;
  refundBalance: number;
  couponAmount: number;
  refundCouponAmount: number;
  refundAt: string;
  transaction: {
    transactionSn: string;
    payType: number;
    amount: number;
    refundAmount: number;
    priceCurrency: string;
    refundable: number;
    actualRefund: number;
    payStatus: number;
  };
  cancelRate: {
    name: string;
    mode: string;
    startDays: number;
    endDays: number;
    rate: number;
    date: string;
    selected: boolean;
  }[];
};
